package util;

/**
 * 接口标准化返回类定义
 */
public class ResultStatus {
    //是否成功
    private boolean flag;
    //状态码
    private Integer code;
    //提示信息
    private  String msg;
    //返回结果对象
    private Object data;

    public boolean isFlag() {
        return flag;
    }

    public void setFlag(boolean flag) {
        this.flag = flag;
    }

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public Object getData() {
        return data;
    }

    public void setData(Object data) {
        this.data = data;
    }

    /**
     * 操作成功
     * @return
     */
    public  static ResultStatus SUCCESS(){
        ResultStatus resultStatus = new ResultStatus();
        resultStatus.setFlag(true);
        resultStatus.setCode(200);
        resultStatus.setMsg("操作成功");

        return  resultStatus;
    }

    /**
     * 操作成功并返回数据
     * @param data
     * @return
     */
    public  static ResultStatus SUCCESS(Object data){
        ResultStatus resultStatus = new ResultStatus();
        resultStatus.setFlag(true);
        resultStatus.setCode(200);
        resultStatus.setMsg("操作成功");
        resultStatus.setData(data);
        return  resultStatus;
    }
	    /**
     * 操作成功并返回数据并添加提示信息
     * @param data
     * @return
     */
    public  static ResultStatus SUCCESS(String msg,Object data){
        ResultStatus resultStatus = new ResultStatus();
        resultStatus.setFlag(true);
        resultStatus.setCode(200);
        resultStatus.setMsg(msg);
        resultStatus.setData(data);
        return  resultStatus;
    }

    /**
     * 操作失败
     * @param code
     * @return
     */
    public  static ResultStatus FTLED(int code){
        ResultStatus resultStatus = new ResultStatus();
        resultStatus.setFlag(false);
        resultStatus.setCode(code);
        resultStatus.setMsg("操作失败");

        return  resultStatus;
    }

    /**
     * 操作失败并添加提示信息
     * @param code
     * @param msg
     * @return
     */
    public  static ResultStatus FTLED(int code, String msg){
        ResultStatus resultStatus = new ResultStatus();
        resultStatus.setFlag(false);
        resultStatus.setCode(code);
        resultStatus.setMsg(msg);

        return  resultStatus;
    }
}
